bitkeeper revision 1.1277.1.5 (425ebd26PXABcGSvCLobVo7xCbroOg)
authordjm@kirby.fc.hp.com <djm@kirby.fc.hp.com>
Thu, 14 Apr 2005 18:57:42 +0000 (18:57 +0000)
committerdjm@kirby.fc.hp.com <djm@kirby.fc.hp.com>
Thu, 14 Apr 2005 18:57:42 +0000 (18:57 +0000)
xenasm.S, process.c:
  properly pass shared page to domain for paravirtualization
Signed-off-by: Dan Magenheimer <dan.magenheimer@hp.com>
xen/arch/ia64/process.c
xen/arch/ia64/xenasm.S

index b88f5ea0c2e5523eac072613cdd18a97c1dafa7a..3ddbc0519237a47338c5c5819e866a9f4d56ab36 100644 (file)
@@ -185,9 +185,10 @@ panic_domain(regs,"psr.ic off, delivering fault=%lx,iip=%p,ifa=%p,isr=%p,PSCB.ii
 
        regs->cr_iip = ((unsigned long) PSCB(ed,iva) + vector) & ~0xffUL;
        regs->cr_ipsr = (regs->cr_ipsr & ~DELIVER_PSR_CLR) | DELIVER_PSR_SET;
-// FIXME: NEED TO PASS PSCB, BUT **NOT** IN R31 WHICH IS BEING USED FOR ar.pr
-// IN ANY CASE, PASS PINNED ADDRESS, NOT THIS ONE
-       //regs->r31 = (unsigned long) &PSCB(ed);
+#ifdef CONFIG_SMP
+#error "sharedinfo doesn't handle smp yet"
+#endif
+       regs->r31 = &((shared_info_t *)SHAREDINFO_ADDR)->vcpu_data[0].arch;
 
        PSCB(ed,interrupt_delivery_enabled) = 0;
        PSCB(ed,interrupt_collection_enabled) = 0;
index 631fa9e61acecefd940993787b87e0a653eb0432..8fc2f36817c78fcad674fc29ca57c9f6447040e2 100644 (file)
@@ -190,7 +190,7 @@ GLOBAL_ENTRY(ia64_new_rr7)
 
        movl r22=SHAREDINFO_ADDR
        ;;
-       movl r25=PAGE_KERNEL
+       movl r25=PAGE_SHARED
        ;;
        mov r21=loc5                    // saved sharedinfo physical address
        ;;